package com.springapp.mvc;

import javax.annotation.Resource;
import javax.jms.*;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.core.MessageCreator;   
import org.springframework.stereotype.Component;   

@Component  
public class ProducerServiceImpl {

    @Autowired
    private JmsTemplate jmsTemplate;


    @Autowired
    @Qualifier("responseQueue")
    private Destination responseDestination;



    public void sendMessage(Destination destination, final String message) {   
        System.out.println("---------------生产者发送消息-----------------");   
        System.out.println("---------------生产者发了一个消息：" + message);   
        jmsTemplate.send(destination, new MessageCreator() {   
            public Message createMessage(Session session) throws JMSException {
                BytesMessage bm = session.createBytesMessage();
                bm.writeBytes("helloBytes".getBytes());
//                TextMessage textMessage = session.createTextMessage(message);
//                textMessage.setJMSReplyTo(responseDestination);
                return bm;
            }
        });   
    }    
  
    public JmsTemplate getJmsTemplate() {   
        return jmsTemplate;
    }    
  
    @Resource  
    public void setJmsTemplate(JmsTemplate jmsTemplate) {   
        this.jmsTemplate = jmsTemplate;   
    }   
    
}  